home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 5_2007-2008.ISO / data / Zips / New_API_Vi2067375252007.psc / APIViewer / Addin Version / Connect.Dsr < prev    next >
Text File  |  2007-05-19  |  5KB  |  158 lines

  1. VERSION 5.00
  2. Begin {AC0714F6-3D04-11D1-AE7D-00A0C90F26F4} Connect 
  3.    ClientHeight    =   9945
  4.    ClientLeft      =   1740
  5.    ClientTop       =   1545
  6.    ClientWidth     =   6585
  7.    _ExtentX        =   11615
  8.    _ExtentY        =   17542
  9.    _Version        =   393216
  10.    Description     =   "Standard API Viewer replacement application"
  11.    DisplayName     =   "New API Viewer"
  12.    AppName         =   "Visual Basic"
  13.    AppVer          =   "Visual Basic 6.0"
  14.    LoadName        =   "Startup"
  15.    LoadBehavior    =   1
  16.    RegLocation     =   "HKEY_CURRENT_USER\Software\Microsoft\Visual Basic\6.0"
  17.    CmdLineSupport  =   -1  'True
  18. End
  19. Attribute VB_Name = "Connect"
  20. Attribute VB_GlobalNameSpace = False
  21. Attribute VB_Creatable = True
  22. Attribute VB_PredeclaredId = False
  23. Attribute VB_Exposed = True
  24. Option Explicit
  25.  
  26. Public FormDisplayed          As Boolean                  'flag indicating if form is displayed
  27. Public VBInstance             As VBIDE.VBE                'VB Instance object
  28. Dim mcbMenuCommandBar         As Office.CommandBarControl 'menu bar connection
  29. Dim mfrmAddIn                 As frmAPIViewer             'select main form
  30. Public WithEvents MenuHandler As CommandBarEvents         'command bar event handler
  31. Attribute MenuHandler.VB_VarHelpID = -1
  32.  
  33. '*******************************************************************************
  34. ' Subroutine Name   : Hide
  35. ' Purpose           : Hide the form
  36. '*******************************************************************************
  37. Sub Hide()
  38.   On Error Resume Next
  39.   FormDisplayed = False       'indicate form not displayed
  40.   mfrmAddIn.Hide              'hide form
  41. End Sub
  42.  
  43. '*******************************************************************************
  44. ' Subroutine Name   : Show
  45. ' Purpose           : Show the form
  46. '*******************************************************************************
  47. Sub Show()
  48.   On Error Resume Next
  49.   If mfrmAddIn Is Nothing Then            'create form if not yet defined
  50.     Set mfrmAddIn = New frmAPIViewer
  51.   End If
  52.   
  53.   Set mfrmAddIn.VBInstance = VBInstance   'set VB instance
  54.   Set mfrmAddIn.Connect = Me              'set connection object
  55.   FormDisplayed = True                    'tag as displayed
  56.   mfrmAddIn.Show                          'then show it
  57. End Sub
  58.  
  59. '*******************************************************************************
  60. ' Subroutine Name   : AddinInstance_OnConnection
  61. ' Purpose           : this method adds the Add-In to VB
  62. '*******************************************************************************
  63. Private Sub AddinInstance_OnConnection(ByVal Application As Object, ByVal ConnectMode As AddInDesignerObjects.ext_ConnectMode, ByVal AddInInst As Object, custom() As Variant)
  64.   On Error GoTo error_handler
  65.   
  66.   'save the vb instance
  67.   Set VBInstance = Application
  68.   
  69.   'this is a good place to set a breakpoint and
  70.   'test various addin objects, properties and methods
  71.   Debug.Print VBInstance.FullName
  72.  
  73.   If ConnectMode = ext_cm_External Then
  74.     'Used by the wizard toolbar to start this wizard
  75.     Me.Show
  76.   Else
  77.     Set mcbMenuCommandBar = AddToAddInCommandBar("New API Viewer")
  78.     'sink the event
  79.     Set Me.MenuHandler = VBInstance.Events.CommandBarEvents(mcbMenuCommandBar)
  80.   End If
  81.  
  82.   If ConnectMode = ext_cm_AfterStartup Then
  83.     If GetSetting(App.Title, "Settings", "DisplayOnConnect", "0") = "1" Then
  84.       'set this to display the form on connect
  85.       Me.Show
  86.     End If
  87.   End If
  88.   Exit Sub
  89.   
  90. error_handler:
  91.   MsgBox Err.Description
  92. End Sub
  93.  
  94. '*******************************************************************************
  95. ' Subroutine Name   : AddinInstance_OnDisconnection
  96. ' Purpose           : this method removes the Add-In from VB
  97. '*******************************************************************************
  98. Private Sub AddinInstance_OnDisconnection(ByVal RemoveMode As AddInDesignerObjects.ext_DisconnectMode, custom() As Variant)
  99.   On Error Resume Next
  100. '
  101. 'delete the command bar entry
  102. '
  103.   mcbMenuCommandBar.Delete
  104. '
  105. 'shut down the Add-In
  106. '
  107.   If FormDisplayed Then
  108.     SaveSetting App.Title, "Settings", "DisplayOnConnect", "1"
  109.     FormDisplayed = False
  110.   Else
  111.     SaveSetting App.Title, "Settings", "DisplayOnConnect", "0"
  112.   End If
  113.   
  114.   Unload mfrmAddIn        'unload form
  115.   Set mfrmAddIn = Nothing 'remove object
  116. End Sub
  117.  
  118. Private Sub IDTExtensibility_OnStartupComplete(custom() As Variant)
  119.   If GetSetting(App.Title, "Settings", "DisplayOnConnect", "0") = "1" Then
  120.     'set this to display the form on connect
  121.     Me.Show
  122.   End If
  123. End Sub
  124.  
  125. 'this event fires when the menu is clicked in the IDE
  126. Private Sub MenuHandler_Click(ByVal CommandBarControl As Object, handled As Boolean, CancelDefault As Boolean)
  127.   Me.Show
  128. End Sub
  129.  
  130. Function AddToAddInCommandBar(sCaption As String) As Office.CommandBarControl
  131.   Dim cbMenuCommandBar As Office.CommandBarControl  'command bar object
  132.   Dim cbMenu As Object
  133.  
  134.   On Error GoTo AddToAddInCommandBarErr
  135. '
  136. 'see if we can find the Add-Ins menu
  137. '
  138.   Set cbMenu = VBInstance.CommandBars("Add-Ins")
  139.   If cbMenu Is Nothing Then
  140.     '
  141.     'not available so we fail
  142.     '
  143.     Exit Function
  144.   End If
  145. '
  146. 'add it to the command bar
  147. '
  148.   Set cbMenuCommandBar = cbMenu.Controls.Add(1)
  149.   '
  150.   'set the caption
  151.   '
  152.   cbMenuCommandBar.Caption = sCaption
  153.   Set AddToAddInCommandBar = cbMenuCommandBar
  154.     
  155. AddToAddInCommandBarErr:
  156. End Function
  157.  
  158.